package Frames_juego;

import java.awt.Color;
import java.awt.Dimension;
import java.awt.Toolkit;

import javax.swing.JFrame;
import javax.swing.JPanel;
import Juego.Juego;

/**
 * Gui del juego, contiene tods las capas, del tanque, de entidades, etc
 * 
 * @author Javier
 *
 */
@SuppressWarnings("serial")
public class GuiJuego extends JFrame {

	protected Juego juego;
	private JPanel contentPane;
	protected Thread piso;

	

	
	/**
	 * Create the frame.
	 */
	public GuiJuego(Juego j) 
	{
		
		juego=j;
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		
		contentPane = new JPanel();
		setContentPane(contentPane);
		contentPane.setBackground(Color.red);
		contentPane.setLayout(null);
		contentPane.setPreferredSize(new Dimension(1000, 540));
		this.pack();
		hacergui();
		this.addKeyListener(juego.getTanque().getManejadorTeclas());   
		centrar_pantalla();
		
	}
	
	
	/** Setea todos los paneles
	 * 
	 */
	public void hacergui()
	{
		this.getContentPane().add(juego.getgraficos().getGraficoEntidades().getpanel());
		this.getContentPane().add(juego.getgraficos().getGraficoTanque().getpanel());
		this.getContentPane().add(juego.getgraficos().getGraficoInfo().getpanel_der());
		this.getContentPane().add(juego.getgraficos().getGraficoInfo().getpanel_izq());
		this.getContentPane().add(juego.getgraficos().getGraficoPiso().getpanel());
		piso = new Thread(juego.getgraficos().getGraficoPiso());
		piso.start();
	}
	

/**
 * centra el juego en la pantalla
 */
	public void centrar_pantalla()
	{
		Dimension dim = Toolkit.getDefaultToolkit().getScreenSize();
		int y = (int) dim.getHeight()/2;
		int x = (int) dim.getWidth()/2;
		y-=contentPane.getHeight()/2;
		x-=contentPane.getWidth()/2;
		
		this.setLocation(x,y);
	}
}
